/*
 * 文件名：ErrorMessage.java
 * 版权：Copyright by www.wootide.com
 * 描述：
 * 修改人：qianfm
 * 修改时间：Sep 11, 2012
 * 跟踪单号：
 * 修改单号：
 * 修改内容：
 */
package com.wootide.cms.common.manager;

/**
 * 错误信息描述
 * @author qianfm
 * @version Sep 11, 2012
 * @see ErrorMessage
 * @since
 */

public enum ErrorMessage
{
    /**
     * 用户不存在.
     */
    NO_USER
    {
        @Override
        String getMessage()
        {
            return "用户不存在";
        }
        
        @Override
        int getCode()
        {
            return 1;
        }
    },
    /**
     * 密码不正确.
     */
    INVALID_PWD
    {
        @Override
        String getMessage()
        {
            return "密码不正确";
        }
        
        @Override
        int getCode()
        {
            return 2;
        }
    },
    /**
     * 未授权.
     */
    NO_AUTHZ
    {
        @Override
        String getMessage()
        {
            return "对不起，管理员未给您授权……";
        }
        
        @Override
        int getCode()
        {
            return 3;
        }
    },
    
    /**
     * 后台数据库异常.
     */
    BACKEND_EXCEPTION_DB
    {
        @Override
        String getMessage()
        {
            return "后台数据库异常";
        }
        
        @Override
        int getCode()
        {
            return 5;
        }
    },
    
    /**
     * 系统异常.
     */
    SYSTEM_EXCEPTION
    {
        @Override
        String getMessage()
        {
            return "系统异常";
        }
        
        @Override
        int getCode()
        {
            return 9;
        }
    },
    /**
     * 未知异常
     */
    UNKNOWN_EXCEPTION
    {
        @Override
        String getMessage()
        {
            return "未知异常";
        }
        
        @Override
        int getCode()
        {
            return 1000;
        }
    },
    
    NO_LOGIN
    {
        @Override
        String getMessage()
        {
            return "尚未登录";
        }
        
        @Override
        int getCode()
        {
            return 10;
        }
    };
    
    /**
     * 前台显示的提示信息.
     * 
     * @return {@link String} 提示信息
     */
    abstract String getMessage();
    
    /**
     * 错误编码.
     * 系统内的编码范围为1-1000，系统外编码范围从1001
     * 
     * @return int 编码
     */
    abstract int getCode();
}
